Path generator for mobile object

ABSTRACT

A path generator includes a map generator for generating a map for a movement space based on information on the position and shape of a mobile object, an obstacle, and a target object. It also includes a composite potential generator for calculating an attractive potential and a repulsive potential based on relative positional relationship among the mobile object, the obstacle, and the destination position, and generating a composite potential that is a sum of the attractive potential and the repulsive potential. A local minimum determination unit performs a path search in the map based on the composite potential and determines whether a convergence position of the path search is a local minimum. If it is, a phantom potential generator generates a phantom potential to be added to the potential of the convergence position. If the convergence position is the destination position, a path generator generates a movement path for the mobile object based on the result of the path search.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus for automaticallygenerating a movement path for a mobile object. More particularly, thepresent invention relates to a path generator utilizing artificialpotential based on positional relationship among objects in an objectspace and determination of a local minimum.

2. Description of the Related Art

One of known techniques for mobile object navigation is the artificialpotential method as is describes in Non-patent Document 1. This methodforms a potential field in an object space in which navigation is to beperformed and determines an overall path to a destination point based onthe gradient of the potential field. A movement path is generated byrepeating a search for a minimum potential point in the vicinity of thecurrent position. The artificial potential method is superior to otherconventional techniques such as graph search in that it canautomatically and flexibly generate a path in an object space.

However, in the artificial potential method, in principle, a search fora movement path may converge to a local minimum halfway and a movementpath to the ultimate destination point may not be generated for certainstructures of potential field of the object space in which navigation isperformed.

In order to avoid such a local minimum problem, a path planning methodutilizing Laplace potential is also known as can be seen in Non-patentDocument 2. The Laplace potential method sets a plurality of cells forcalculating potentials as a grid in an object space in which navigationis performed, and performs a calculation using the Laplace differentialequation for each of the cells.

However, in the Laplace potential method, there will be a single minimumpoint in an entire potential field and calculation needs be repeateduntil the minimum point corresponds with the destination point. Thus,calculation takes a significantly long time depending on the structureof the object space. Thus, rapid path planning, guidance of a mobileobject, and change of a path can hardly be performed.

References

Non-patent Document 1: O. Khatib, “Real-Time Obstacle Avoidance formanipulators and Mobile Robots”, International Journal of RoboticsResearch, 51, pp. 90-98, 1986

Non-patent Document 2: E. Rimon, D. E. Koditscheck, “Exact RobotNavigation using Artificial Potential Functions”, IEEE TransactionsRobotic and Automation, Vol. 8, No. 5, pp. 501-518, 1992

It is an object of the invention to provide a path generator that avoidsthe local minimum problem inherent to the artificial potential methodand realizes rapid path planning.

SUMMARY OF THE INVENTION

The present invention provides a path generator for autonomouslygenerating a movement path for a mobile object within a movement space.The apparatus comprises a map generator for generating a map for amovement space based on information including the initial position andthe destination position of the mobile object and the position and shapeof an obstacle. The apparatus also includes a composite potentialgenerator for calculating using a map an attractive potential and arepulsive potential that are based on relative positional relationshipamong the mobile object, the obstacle, and the destination position. Thecomposite potential generator generates a composite potential that isthe sum of the attractive potential and the repulsive potential.

The apparatus further includes a local minimum determination unit forperforming a path search in the map based on the composite potential todetermine whether a convergence position of the path search is a localminimum that is not the destination position. The apparatus includes aphantom potential generator for, if it is determined that theconvergence position is a local minimum, generating a phantom potentialthat is obtained by increasing the potential of the convergence positionby a predetermined value. The apparatus also includes a path generatorfor, if it is determined that the convergence position is not a localminimum but the destination position, generating a movement path for themobile object based on the result of the path search. The phantompotential generated by the phantom potential generator is added to thecomposite potential.

According to the invention, the local minimum problem can be avoided,and a search can be performed only with comparison operations on a localarea so that a rapid path search is possible.

In an embodiment of the invention, the path generator further comprisesa tag information detector for identifying information on the positionand shape of the mobile object, obstacles and a target object at thedestination position based on signals from tags attached to them.

In an embodiment of the invention, the tag can be an RF-ID tag that isapplied to the target object and movable obstacles and can be anultrasonic tag that is applied to the mobile object and stableobstacles.

The invention further provides a program for autonomously generating amovement path for a mobile object in a movement space. The program isstored in a memory and causes a computer to perform a function ofgenerating a map for a movement space based on information including theinitial position and the destination position of the mobile object andthe position and shape of an obstacle. The program also performs thefunction of calculating, based on the map, an attractive potential and arepulsive potential that are based on relative positional relationshipamong the mobile object, the obstacles, and the destination position,and of generating a composite potential that is the sum of theattractive potential and the repulsive potential. The program performs apath search in the map based on the composite potential and determineswhether a convergence position of the path search is a local minimum,not the destination position. The program performs a function of, if itis determined that the convergence position is a local minimum,generating a phantom potential that is obtained by increasing thepotential of the convergence position by a predetermined value, and addsthe phantom potential to the composite potential. The program alsoperforms a function of if it is determined that the convergence positionis not a local minimum but the destination position, generating amovement path for the mobile object based on the result of the pathsearch.

In an embodiment of the invention, the program further comprises afunction of identifying information including the initial position andthe destination position of the mobile object and the position and shapeof the obstacle from signals sent from tags that are attached to themobile object, the obstacle, and a target object at the destinationposition.

Unlike the Laplace potential method that has been proposed for solvingthe local minimum problem associated with the conventional artificialpotential method, the present invention does not require to calculatethe Laplace equation and have it converge in all cells that are set in asearch space. According to the apparatus or the program of theinvention, a rapid search for a movement path can be done because thecalculation converges by repetition of comparison operations only on alimited search region (eight points neighboring the current position).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram showing the navigation system for a mobilerobot that includes a path generator according to an embodiment of theinvention.

FIG. 2 is a functional block diagram illustrating the configuration ofthe path generator according to the embodiment of the invention.

FIG. 3 illustrates a perspective view showing an example of a movementspace in which obstacles exist on the path to a destination object and acorresponding object map.

FIG. 4 illustrates a process of movement path search.

FIG. 5 illustrates a potential field and a movement path generated bythe artificial potential method.

FIG. 6 illustrates a potential field and a movement path generated bythe movement path generation method according to an embodiment of theinvention.

FIG. 7 is a flowchart illustrating generation of a movement path for amobile robot according to an embodiment of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

An embodiment of the invention will be now described with reference todrawings. FIG. 1 is a schematic diagram illustrating a navigation systemfor a mobile robot 11 that includes a path generator 29 according to anembodiment of the invention.

The system generates an optimal movement path that allows the mobilerobot 11 to reach a target object 17 guiding the mobile robot 11 in amovement space 10 such as an interior of a house. Obstacles that blockthe progress of the mobile robot 11 exist between the mobile robot 11and the target object 17. There are two types of the target object 17and the obstacles, one being a movable obstacle 13 such as a chair and aglass whose position is frequently changed in daily life, and the otherbeing a fixed obstacle 15 such as a chest of drawers and a cupboardwhich is not usually moved.

Here, the target object 17 and obstacles are relative expressions. Whena task such as movement to a certain object or an operation to theobject is given to the mobile robot 11, the object is recognized as thetarget object 17. As well, any object in the movement space 10 thatobstructs the movement or operation of the mobile robot 11 is recognizedas the obstacles 13 and 15.

The mobile robot 11 has movement means such as bipedal walking device orwheel running device, capable of autonomous movement. The mobile robot11 is connected to a communication apparatus 31 via a wireless LAN andmoves in the movement space 10 according to information on a movementpath received from the communication apparatus 31.

Tags 19 and 21 are attached to all objects placed in the movement space10 (including movable obstacle 13, fixed obstacle 15, mobile robot 11,and target object 17) for providing/recognizing information on theobject such as the type, shape and weight of the object through IDs. Thetags 19 and 21 are an ultrasonic tag and an RF-ID tag, respectively,either of which may be used according to the type of object.

The ultrasonic tag 19 allows calculation of the third-dimensionalposition of the tag using ultrasonic waves emitted from the tag withhigh precision (on the order of centimeters). Since the ultrasonic tag19 actively emits ultrasonic waves from itself it need to have a powersupply or requires an environment that can connect it to an externalpower supply. The ultrasonic tag 19 is relatively large in size. Forthose reasons, the ultrasonic tag 19 is applied to the fixed obstacle 15that can be connected to an external power supply and the mobile robot11 that has a self power supply and requires highly precise detection ofits position for the purpose of path following. An ultrasonic tag systemuses a frequency band above 20 kHz (e.g., about 40 kHz). The frequencyband to be used is selected as appropriate in accordance with acommunication environment and the like so that positions can be detectedsatisfactorily.

The RF-ID tag 21 is a passive tag that is activated by radio wavereceived from an RF-ID antenna 25 attached on the ceiling. Tag 21returns its ID information to the antenna 25. The RF-ID tag 21 can beimplemented as a much smaller device than the ultrasonic tag 19 becauseit does not require a power supply, and thus is superior in terms ofconvenience. Tag 21 can not provide position detection as precise as anultrasonic tag system due to the nature of the systems. The RF-ID tags21 are attached to the movable obstacles 13 and the target object 17which may have limited areas for attaching the tag and may not beconnected to a power supply. Frequency bands used for the RF-ID tagsystem may include 13.56 MHz, 950 MHz, and 2.45 GHz, for example.

Ultrasonic wave is superior with respect to rectilinear movement ingeneral, but has an occlusion problem, that is, communicationdeteriorates when an obstacle exists in-between. The RF-ID system issuperior in coping with the occlusion problem. Thus, whether theultrasonic tag 19 or the RF-ID tag 21 is used as a tag is a matter ofchoice depending on the availability of a power supply, frequency ofmovement, or usage position. Where and how many tags are attached isdetermined in consideration of the size or shape of an object,communication quality at each position and so on. For example, for acupboard placed close to a wall, the ultrasonic tags 19 may be attachedat its four corners apart from the wall so that an obstacle area can berecognized when the mobile robot 11 passes by the cupboard.

On the ceiling of the movement space 10, ultrasonic receivers 23 forreceiving radio wave from the ultrasonic tags 19 and RF-ID antennas 25for receiving radio wave from the RF-ID tags are provided in the form ofa grid. The spacing between them is determined according to the size andshape of the movement space 10, the coverage area of the ultrasonic andRD-ID tag systems, and the number of objects in the movement space 10and the like, so that position detection and path generation can beperformed efficiently and without omission. In this embodiment, theultrasonic receivers 23 and the RF-ID antennas 25 are alternatelypositioned in the form of a grid with 50 cm spacing.

Since radio wave emitted by the tags 19 and 21 may be weak ordirectional, a signal from a certain one of the tags 19 and 21 cannot bedetected by all of the ultrasonic receivers 23 or the RF-ID antennas 25attached to the ceiling. Signal from the tag 19 or 21 is received by theultrasonic receiver 23 or the RF-ID antenna 25 in the vicinity of thetag 19 or 21, and the position of the object on which the tag 19 or 21is attached is determined based on the positional relationship with theultrasonic receiver 23 or the RF-ID antenna 25. As methods ofdetermining an object position in an ultrasonic and RF-ID tag systemsare known and are not essential to the invention, detailed descriptionis omitted.

A tag information detector 27 receives a tag signal detected by theultrasonic receiver 23 and the RF-ID antenna 25, determines the positionof the tag 19, 21 from how the tag signal was received, and reads outobject-specific information such as the type and shape of the object inquestion from ID information contained in the tag signal. A pathgenerator 29 to be described hereafter includes a tag database 45 forstoring object-specific information based on the position informationand the ID of the tag 19, 21. Such information may be passed to a mapgenerator 41 as necessary.

The path generator 29 of the present invention, upon receipt of objectspecific information based on the position information and the ID of thetag 19, 21 in the movement space 10, generates an optimal path thatallows the mobile robot 11 to avoid the obstacles 13 and 15 and reachthe target position where the target object 17 exists. Here, the pathgenerator 29 is triggered when a certain task is given to the mobilerobot 11 and starts to search an optimal path to the target position.

For example, if a task of moving to the target object 17 is given to themobile robot 11, the mobile robot 11 extracts tag ID informationrelative to the target object 17 from the task command, and passes thetag ID information to the path generator 29 via the communicationapparatus 31. Upon receiving the tag ID information from the robot 11,the path generator 29 searches for and determines an optimal path forthe mobile robot 11 based on the tag information for each objectobtained from the tag information detector 27. When the path determinedby the path generator 29 is communicated to the mobile robot 11 via thecommunication apparatus 31, the mobile robot 11 travels to the positionof the target object 17 along the path utilizing the ultrasonic tagsystem and its own vision system.

Although tag ID information for the target object 17 is contained in atask command in this embodiment, such tag ID information may be suppliedto the mobile robot 11 in a different manner. For example, tag IDinformation for the target object 17 may be obtained by the robot 11when a user specifies the target object 17 utilizing a touch panel andthe like and/or providing the characteristics (e.g., color, shape, name)of the target object 17 to the robot 11 by voice and causing the robot11 to find an appropriate object having those characteristics from adatabase.

The present invention adopts a method that is an improvement of theconventional artificial potential method as the path searching method.Detail on it will be described below.

The communication apparatus 31 sends information on the optimal movementpath generated by the path generator 29 to the mobile robot 11. Theinformation may be sent over a wireless LAN, for example. The mobilerobot 11 travels to the target position in accordance with the receivedpath information.

The tag information detector 27, path generator 29, and communicationapparatus 31 can be implemented by hardware. The functions of the taginformation detector 27 and path generator 29 may be implemented by asoftware program. The tag information detector 27 and the communicationapparatus 31 may be included in the path generator 29. Also, at leasteither of the tag information detector 27 and the path generator 29 maybe integrated into the mobile robot 11.

Referring to FIG. 2, the technique for searching for an optimal path forthe mobile robot 11 performed by the path generator 29, whichconstitutes the invention, will be described. FIG. 2 is a functionalblock diagram illustrating the configuration of the path generator 29according to the embodiment.

A map generator 41 generates an object map for the movement space 10 byutilizing tag information (object specific information based on positioninformation and a tag ID) for objects within the movement space 10(i.e., the mobile robot 11, target object 17, movable obstacle 13 andfixed obstacle 15) determined by the tag information detector 27. Anobject map is a map that represents presence status of respectiveobjects in the movement space 10 as a grid by two-dimensionallyprojecting the objects onto the map. The spacing of the grid on theobject map is set in accordance with the height of the ceiling of themovement space 10 that affects the precision of position detection ofthe RF-ID tag 21, complexity of the objects in the movement space 10,communication capability of the ultrasonic tag system and the RF-ID tagsystem, moving speed and operation control precision of the mobile robot11, computation ability of the path generator 29 and the like. Thespacing may be 50 centimeters in this embodiment.

For example, assume a movement space 10 in which two obstacles 33 and 35(the movable obstacle 13 or the fixed obstacle 15) exist between themobile robot 11 and the target object 17 as shown in FIG. 3(A). The mapgenerator 41 first receives information on the movement space 10 from aglobal map 43 and sets the size of the object map. The map 43 includesinformation such as size and shape of the movement space 10, positionsof walls, positions of doorways and the like.

Then, the map generator 41 determines the positions of respectiveobjects in the movement space 10 on the object map based on tag positioninformation stored in a tag database 45. Further, the generator 41 readsout from the tag database 45 information specific to the object (shapeand type) based on tag IDs, and plots a shape corresponding to theobject specific information on the object map as an object area.

FIG. 3(B) illustrates an example of the object map. Shaded areas in theobject map represent areas in which existence of an object (the mobilerobot 11, target object 17, and obstacles 33 and 35) is recognized. Asshown in FIG. 3(B), an object map consists of a plurality of smallrectangular areas (cells) arranged in the form of a grid. The areaoccupied by an object (referred to as an object area) is identified interms of the cells. For example, if the obstacle 33 occupies a portionof a cell, the cell in its entirety is identified as a part of the areaoccupied by the obstacle 33. This avoids a problem of the mobile robot11 colliding with the obstacle 33 while it travels.

The object map may be designed such that the range of an object areaincludes a certain margin outward from the actual object area. In thatcase, a sufficient distance from an object is secured so that it isensured that a collision while mobile robot 11 moves is avoided. Thewidth of the margin may be determined in consideration of the number andshape of objects in the movement space 10, movement behavior of themobile robot 11 and the like.

The map generator 41 gives cell values to all cells that constitute atwo-dimensional object map to complete the object map. Here, areas wherethe obstacles 33 and 35 of FIG. 3(B) lie are given the cell values of“1” and other areas are given the cell values of “0”. The cell value isutilized as an index for determining whether an area is an object areaor not when a potential field to be discussed later is calculated.

Information in the database 45 of FIG. 2 is sequentially updated at acertain interval (e.g., every 10 ms).

The global map 43 and the tag database 45 in FIG. 2 may be providedexternal to the path generator 29 of the present embodiment. Informationin the global map 43 and the tag database 45 may be supplied to the mapgenerator 41 externally.

Returning to FIG. 2, a composite potential generator 47 calculates acomposite potential U(x,y) based on the object map of the movement space10 generated by the map generator 41 and generates a potential field forthe entire movement space 10. The composite potential U(x,y) is obtainedby adding a phantom potential U_(v)(x,y) to a repulsive potentialU₀(x,y) and an attractive potential U_(xd)(x,y) which have been used inthe conventional artificial potential method. The phantom potential isprepared to avoid a local minimum. The process of preparing the phantompotential U_(v)(x,y) will be described hereafter.

The repulsive potential U₀(x,y) is a potential preventing the mobilerobot 11 from approaching the obstacles 13, 15. The value of therepulsive potential U₀(x,y) is “0” when the distance between thecoordinate (x,y) of a certain cell and the obstacle 13, 15 on the objectmap is greater than a predetermined value (p₀). The value of therepulsive potential U₀(x,y)increases as the coordinate (x,y) is closerto the obstacle 13, 15. That is, the repulsive potential U₀(x,y) forms apotential field that contributes to move away the path from theobstacle. The repulsive potential U₀(x,y) is calculated for eachobstacle by the following formula:

$\begin{matrix}{{U_{0}\left( {x,y} \right)} = \left\{ \begin{matrix}{\frac{1}{2}{\eta\left( {\frac{1}{p\left( {x,y} \right)} - \frac{1}{p_{0}}} \right)}^{2}} & {{p\left( {x,y} \right)} \leq p_{0}} \\0 & {{p\left( {x,y} \right)} > p_{0}}\end{matrix} \right.} & (1)\end{matrix}$

Here, η is a positive weighting constant. p₀ is a positive constant andis a threshold value at which the repulsive potential U₀(x,y) isproduced.

Here, p₀ is a value that determines to what distance the repulsivepotential U₀(x,y) needs be calculated. The constant η is a value foradjusting the magnitude of the repulsive potential U₀(x,y). The constantp₀ and the constant η are determined based on the number of objects inthe movement space 10, the computation ability of the path generator 29,a desired time period to the convergence of repulsive potentialcalculation and the like. Although it depends on the precision of theself-position detection of the mobile robot 11, when the constant η islarge, the mobile robot 11 is less likely to collide with an obstacleduring its movement, and when the constant η is small, the mobile robot11 can pass through a narrow space.

p(x,y) in Formula (1) represents the smallest distance from a coordinate(x,y) of a cell on the object map to the cells where an obstacle lies,and is calculated by the following formula:p(x,y)=min√{square root over ((x−x _(m))²+(y−y _(m))²)}{square root over((x−x _(m))²+(y−y _(m))²)}  (2)

The coordinate (x_(m),y_(m)) represent coordinates of all cells wherethe obstacle of interest lies. The area of the obstacle in question isdetermined based on the cell value given to the object map.Specifically, a set of cell areas having cell value of “1” is treated asan area where the obstacle lies. The coordinates of all the cellscontained in the set are denoted as (x_(m),y_(m)).

The attractive potential U_(xd)(x,y) is a potential that moves themobile robot 11 toward the target position (x_(d),y_(d)) where thetarget object 17 lies. The value of an attractive potential U_(xd)(x,y)is “0” at the target position (x_(d),y_(d)) and increases as thecoordinate (x,y) on the object map is farther from the target position(x_(d),y_(d)). Specifically, the attractive potential U_(xd) (x,y) iscalculated by the following formula:

$\begin{matrix}{{U_{xd}\left( {x,y} \right)} = {\frac{1}{2}k_{p}\left\{ {\left( {x - x_{d}} \right)^{2} + \left( {y - y_{d}} \right)^{2}} \right\}}} & (3)\end{matrix}$

Here, (x_(d),y_(d)) is the coordinates of the target object 17. k_(p) isa positive weighting factor. k_(p) can be determined such that theattractive potential U_(xd) (x,y) for the initial position of the mobilerobot 11 prior to its movement is “1”, for example.

A phantom potential U_(v) (x,y) is added to the attractive potentialU_(xd) (x,y) and the repulsive potential U₀(x,y) to generate a compositepotential U(x,y). The initial value of the phantom potential U_(v)(x,y)is 0.U(x,y)=U _(xd)(x,y)+U ₀(x,y)+U _(v)(x,y)  (4)

The composite potential U(x,y) forms a potential field for each cell asshown in FIG. 6(A) in the case of the movement space 10 shown in FIG. 3,for example.

The local minimum determination unit 49 performs a path search utilizingthe potential field of the movement space 10 in terms of the compositepotential U(x,y). It searches for minimum potential points in localareas moving from the starting point of navigation to the destinationpoint based on the gradient of the potential field in order to establishan entire path.

Referring to FIG. 4( a), values of composite potentials U(x,y) of eightpoints 63 neighboring the cell 61 corresponding to the initial positionof the mobile robot 11 are compared, and a cell 65 having the smallestvalue is selected. Cell 65 now becomes a reference cell. Turning to FIG.4( b), values of composite potential U(x,y) of eight points 67neighboring the cell 65 are compared, and cell 69 having the smallestvalue is selected. Then, cell 69 becomes a reference cell. Turning toFIG. 4( c), composite potential values of eight points 71 neighboringthe cell 69 are compared, and cell 73 having the smallest values isselected, cell 73 becoming the next reference cell. By repeating thesesteps, a movement path is found as a sequence of the reference cells.

When all the composite potentials U(x,y) of the neighboring eight pointsare greater than the composite potential of the current position of themobile robot 11, the path search process determines a convergenceposition (x_(g),y_(g)) is reached. Then, a check is made as to whetherthe convergence position (x_(g),y_(g)) is destination position(x_(d),y_(d)). If they do not match, the convergence position is a localminimum position. And, a phantom potential U_(v)(x,y) for resolving thelocal minimum is generated. If the two positions match, the path to thetarget object 17 has been established. In reality, a convergenceposition and a destination position rarely match because of errors inposition detection and the like. Thus, it is also possible to determinethat the path to the destination position is completed when the distancebetween the convergence position and the destination position is smallerthan a predetermined threshold value.

Returning to FIG. 2, the phantom potential generator 51 generates aphantom potential U_(v)(x,y) which increases the local minimum potentialof the cell (x_(g),y_(g)) to resolve the local minimum. The added value,the phantom potential U_(v)(x,y) is determined based on the size of theoperation space, the number of obstacles, a desired time by which acalculation is converged and so on. A simulation indicates that in thecase the potential for the initial position of the mobile robot 11 is“1” and the potential for the destination position is “0” as in thisembodiment, a phantom potential of 0.1 enables rapid and high-precisiongeneration of a path.

The value of phantom potential U_(v)(x,y) may be set based on thedifference in potential between the initial position of the mobile robot11 and its destination position, the number of cells, the computationability of the system, the speed and precision of path generationdesired by a user for the invention and so on. Also, in addition to thepotential of a convergence position that is determined to be a localminimum, the potential of neighboring eight points may be simultaneouslyincreased by a predetermined amount. The phantom potential U_(v)(x,y) isinput to the composite potential generator 47 described above and addedto the composite potential U(x,y). Then, a new potential field resolvingthe local minimum that has converged in the previous path search isformed and further path search is performed.

The path generator 29 according to the invention avoids a local minimumat a much lower calculation cost than the conventional artificialpotential method by adding the phantom potential U_(v)(x,y) describedabove to the potential field.

After path search at the local minimum determination unit 49 iscompleted, the path generator 53 generates information on a movementpath from the initial position of the mobile robot 11 to the destinationposition (x_(d),y_(d)) and sends the information to the communicationapparatus 31.

With reference to FIGS. 5 and 6, the movement path generation method ofthe invention is compared to the conventional artificial method. Theillustrated movement space 10 is the same as that shown in FIG. 3.

FIG. 5( a) shows a potential field that is generated by the conventionalartificial potential method. FIG. 5( b) shows a result of movement pathsearch 81 on an object map that is based on the potential fieldgenerated by the conventional artificial potential method. The x- andy-axes in FIG. 5( a) correspond to the x- and y-axes in FIG. 5( b), andz-axis represents the value of potential for each cell in the objectmap. With reference to FIG. 5( a), it can be seen that in the artificialpotential method a potential field inclines from the initial position ofthe mobile robot 11 to the destination position 17 due to the effect ofthe attractive potential U_(xd)(x,y). And a potential field that assumesa greater value as it is closer to the obstacles 33, 35 is formed due tothe effect of the repulsive potential U₀(x,y).

As can be seen from FIG. 5( b), the movement path 81 ends before theobstacle 33 and thus does not reach the destination position 17. Withreference to the potential field of FIG. 5( a), a local minimum in thevicinity of the obstacle 33 caused by the effect of the potential field83 of a large value corresponding to the obstacle 33, hinders movementin the direction of the target object 17. In other words, the pathsearch has converged to a local minimum. Thus, the artificial potentialmethod of prior art has a problem that path search converges to a localminimum due to the presence of obstacles and the like.

FIG. 6( a) illustrates a potential field that is generated by themovement path generation method according to the invention. FIG. 6( b)illustrates a result of a movement path search 85 shown on an objectmap. As in FIG. 5, the x- and y-axes in FIG. 6( a) correspond to the x-and y-axes in FIG. 6( b), and the z-axis represents the value of apotential for each cell on the object map. As can be seen from FIG. 6(a), according to the movement path generation method of the invention,the phantom potential generator 51 generates a potential field byincreasing potential 87 of the cell that has been determined to be alocal minimum. Referring to FIG. 6( b), the movement path 85 reaches thedestination position 17 without converging to a local minimum because ofthe potential 87 that is increased by the phantom potential U_(v)(x,y).

As has been described, the movement path generation method of theinvention avoids a local minimum easily at a lower calculation cost thanthe conventional artificial potential method by sequentially adding acertain amount to the potential of a cell that has been determined to bea local minimum in the course of a path search. The method also enablesrapid search for a movement path because it can generate a movement pathby repeating a highly local comparison operation involving only eightpoints neighboring the current position.

FIG. 7 is a flowchart illustrating the flow of movement path generationprocessing at the path generator 29.

At step S101, a map is set up based on information on the movement space10 received from the global map 43, and an object map is generated basedon tag information received from the tag information detector 27 andinformation on the target object 17 reflecting the task given to themobile robot 11. The tag information includes position of the tags 19,21 attached to each object in the movement space 10 (i.e., the mobilerobot 11, target object 17, movable obstacle 13, and fixed obstacle 15)and object-specific information based on tag IDs. The coordinate of eachobject is determined from the position information and the shape of eachobject is determined from object-specific information. Then, an areacovering the object with some margin is plotted on the object map.

At step S103, a repulsive potential U₀(x,y) for moving the mobile robot11 away from the obstacles 13, 15 is calculated with Formula (1). Thevalue of the repulsive potential U₀(x,y) is larger than 0 in themovement space, increases substantially infinitely as the coordinate(x,y) on the object map is closer to the obstacle 13, 15, and becomes 0when the distance between the coordinate (x,y) and the obstacle 13, 15is equal to or greater than a predetermined value. The repulsivepotential U₀(x,y) forms a potential field that moves the robot 11 awayfrom the obstacles 13, 15.

At step S105, an attractive potential U_(xd)(x,y) for bringing themobile robot 11 close to the destination position (x_(d),y_(d)) wherethe target object 17 lies is calculated with Formula (3). The value ofthe attractive potential U_(xd)(x,y) is 0 at the destination position(x_(d),y_(d)) and has a larger value as the coordinate (x,y) is fartherfrom the destination position (x_(d),y_(d)).

At step S107, a phantom potential U_(v)(x,y) is added to the attractivepotential U_(xd)(x,y) and the repulsive potential U₀(x,y) to generate acomposite potential U(x,y). The initial value of the phantom potentialU_(v)(x,y) is 0.

At step S109, a movement path for the mobile robot 11 is searched for byutilizing the potential field in the movement space 10 formed by thecomposite potential U(x,y). In the path search process, compositepotentials U(x,y) of eight points neighboring the cell of the currentposition of the mobile robot 11 are compared and a cell having a minimumpotential is determined. If the composite potentials U(x,y) of all theeight neighboring points are greater than the potential of the currentposition, a converge position (x_(g),y_(g)) has been met.

At step S111, it is determined whether the converge position(x_(g),y_(g)) matches the destination position (x_(d),y_(d)). If they donot match, it is determined that the path search has converged to alocal minimum and the procedure proceeds to step S113. If the twopositions match, it is determined that the search for a path to thedestination position is accomplished and the procedure proceeds to stepS115.

At step S113, a phantom potential U_(v)(x,y) for resolving the localminimum is generated. A predetermined value is added to the phantompotential U_(v)(x_(g),y_(g)) of the convergence position (x_(g),y_(g))to update the phantom potential U_(v)(x,y). The amount by which thephantom potential U_(v)(x,y) is increased depends on the size of theoperation space or the number of obstacles and the like, and is 0.1 forexample. The updated phantom potential U_(v)(x,y) is added to thecomposite potential U(x,y) at step S107, and a search for a movementpath using the new composite potential U(x,y) is again carried out.

At step S115, information on a movement path from the initial positionof the mobile robot 11 to the destination position (x_(d),y_(d)) isgenerated. The information on the movement path is sent to thecommunication apparatus 31.

The generated path information is transmitted to the mobile robot 11 viathe communication apparatus 31. The mobile robot 11 travels to thetarget object 17 according to the path information utilizing theultrasonic tag 19 attached to itself to confirm where it is currentlypositioned.

The functions of the map generator 41, composite potential generator 47,local minimum determination unit 49, phantom potential generator 51, andpath generator 53 of FIG. 2, which are essential parts of the invention,may be implemented by hardware or by software programs. In the case thefunctions are implemented by programs, the programs may be prestored inthe path generator 29, or the programs may be externally provided asnecessary on a storage medium such as a CD-ROM or by wireless/wiredtransmission.

While the invention has been described with respect to specificembodiment, the invention is not limited thereto. For example, valuessuch as the cell value “1” for an object area on an object map, theattractive potential “1” for the initial position of the robot 11, andthe addition of “0.1” of the phantom potential are shown as examples inaccordance with the environment of the embodiment. These values may beset as appropriate based on the number of objects in the movement space10, the computation ability of the path generator 29, a desiredcalculation speed and so on.

1. A path generator for autonomously generating a movement path for amobile object in a movement space, comprising: a map generatorconfigured to generate a map of said movement space based on an initialposition and a destination position of said mobile object, and thepositions and shapes of one or more obstacles; a composite potentialgenerator configured to calculate an attractive potential and arepulsive potential that are based on a relative positional relationshipin said map of said mobile object, said obstacles and said destinationposition, wherein said generator is configured to generate a compositepotential that is a sum of the attractive potential and the repulsivepotential; a local minimum determination unit configured to perform apath search in said map based on said composite potential, wherein saidlocal determination unit is configured to determine a position of alowest composite potential in a local area of a predetermined sizearound said mobile object and to determine whether said position of thelowest composite potential matches said destination position, whereinsaid path generator is configured such that when said position of alowest composite potential does not match said destination position, apotential is added to said lowest composite potential so that saidmobile object may move out of said position of the lowest compositepotential; and when said position of the lowest composite potentialmatches said destination position, a movement path for said mobileobject is produced.
 2. The path generator for a mobile object accordingto claim 1, further comprising: a tag information detector configured toreceive signals from tags attached to said mobile object, said obstaclesand a target object.
 3. The path generator for a mobile object accordingto claim 2, wherein said tags include RF-ID tags attached to the targetobject and one or more movable obstacles and ultrasonic tags attached tosaid mobile object and one or more fixed obstacles.
 4. The pathgenerator for a mobile object as in any one of claims 1, 2, and 3,wherein said attractive potential is determined by a formula representedby${U_{xd}\left( {x,y} \right)} = {\frac{1}{2}k_{p}\left\{ {\left( {x - x_{d}} \right)^{2} + \left( {y - y_{d}} \right)^{2}} \right\}}$where (x,y) is a coordinate in said map, (x_(d),y_(d)) is a coordinateof said destination position, and k_(p) is a positive weighting factor,said repulsive potential is determined by a formula represented by${U_{0}\left( {x,y} \right)} = \left\{ \begin{matrix}{\frac{1}{2}{\eta\left( {\frac{1}{p\left( {x,y} \right)} - \frac{1}{p_{0}}} \right)}^{2}} & {{p\left( {x,y} \right)} \leq p_{0}} \\0 & {{p\left( {x,y} \right)} > p_{0}}\end{matrix} \right.$ where η is a positive weighting factor, p₀ is apositive constant representing a threshold at which repulsive potentialoccurs, p(x,y) is a smallest distance between a certain coordinate (x,y)in said map and a coordinate where said obstacle lies, p(x,y) isdetermined by a formula represented byp(x,y)=min√{square root over ((x−x _(m))²+(y−y _(m))²)}{square root over((x−x _(m))²+(y−y _(m))²)} where (x_(m),y_(m))represents all coordinatescontained in an area of said obstacle in said map, and said compositepotential is determined by a formula represented byU(x,y)=U _(xd)(x,y)+U ₀(x, y)+U_(v)(x,y) where U_(xd)(x,y) is anattractive potential, U₀(x,y) is a repulsive potential, and U_(v)(x,y)is a potential to be added to said lowest composite potential so thatsaid mobile object may move out of said position of the lowest compositepotential.
 5. A computer executable program, stored in a computerreadable medium, for autonomously generating a movement path for amobile object in a movement space, said program causing a computer toperform a process, the process comprising: generating a map for saidmovement space based on information that is stored in a memory includingan initial position and a destination position of said mobile object anda position and shape of one or more obstacles; calculating an attractivepotential and a repulsive potential in said map based on a relativepositional relationship among said mobile object, said obstacles andsaid destination position, and generating a composite potential as a sumof the attractive potential and the repulsive potential; performing apath search in said map based on said composite potential, determining aposition of a lowest composite potential in a local area of apredetermined size around said mobile object, and determining whethersaid position of the lowest composite potential matches said destinationposition; adding a potential to said lowest composite potential so thatsaid mobile object may move out of said position of the lowest compositepotential when said position of the lowest composite potential does notmatch said destination position; and producing a movement path for saidmobile object when said position of the lowest composite potentialmatches said destination position.
 6. The program according to claim 5,further causing the computer to identify information from signals fromtags attached to said mobile object, said obstacle and a target objectat said destination position.
 7. The program according to claim 6,wherein said tags include RF-ID tags attached to said target object andmovable obstacle and ultrasonic tags attached to said mobile object andone or more fixed obstacles.
 8. The program as in any one of claims 5,6, and 7, wherein said attractive potential is determined by a formularepresented by${U_{xd}\left( {x,y} \right)} = {\frac{1}{2}k_{p}\left\{ {\left( {x - x_{d}} \right)^{2} + \left( {y - y_{d}} \right)^{2}} \right\}}$where (x,y) is a certain coordinate in said map, (x_(d),y_(d)) is acoordinate of said destination position, and k_(p) is a positiveweighting factor, said repulsive potential is determined by a formularepresented by ${U_{0}\left( {x,y} \right)} = \left\{ \begin{matrix}{\frac{1}{2}{\eta\left( {\frac{1}{p\left( {x,y} \right)} - \frac{1}{p_{0}}} \right)}^{2}} & {{p\left( {x,y} \right)} \leq p_{0}} \\0 & {{p\left( {x,y} \right)} > p_{0}}\end{matrix} \right.$ where η is a positive weighting factor, p₀ is apositive constant and is a threshold at which repulsive potentialoccurs, p(x,y) is the smallest distance between a certain coordinate(x,y) in said map and a coordinate at which said obstacle is recognizedto exist, p(x,y) is determined by a formula represented byp(x,y)=min√{square root over ((x−x _(m))²+(y−y _(m))²)}{square root over((x−x _(m))²+(y−y _(m))²)} where (x_(m,y) _(m)) represents allcoordinates contained in an area of said obstacle in said map, and saidcomposite potential is determined by a formula represented byU(x,y)=U _(xd)(x,y)+U ₀(x,y)+U _(v)(x,y) where U_(xd)(x,y) is anattractive potential, U₀(x,y) is a repulsive potential, and U_(v)(x,y)is a potential to be added to said lowest composite potential so thatsaid mobile object may move out of said position of the lowest compositepotential.